Docker Docker Imageビルドフェーズに値を与えたいならARGを利用する
よくある勘違いから
以下の方法ではDockerfileのイメージビルド時に値を与えれない。
environementで指定されてる値は、イメージが出来上がった後に与えられる。ので、Dockerfileの記述からは利用できない
code: docker-compose.yml
app:
environment:
- ABC=aaaaaaa
- BDC=bbbbbbb
Dockerfileで、このABC、BDCの値は利用できない。
イメージが出来上がった後に与えられる環境変数です。
対策
ARGを利用する。
code: Dockerfile
FROM ...
ARG ABC
ENV ABC=${ABC}
code: docker-compose.yml
app:
build:
dockerfile: ...
args:
- ABC=aaaaaa
- BDC=bbbbbb